/**
 * 滚动条横向和纵向动画复位
 * @export
 */
export default function resetScroll() {
    const html = document.documentElement
    amiate(html.scrollTop, 0, (mtop) => {
        html.scrollTop = mtop
    })
    amiate(html.scrollLeft, 0, (mtop) => {
        html.scrollLeft = mtop
    })
}

/**
 * 在1s中，从指定的初始值，变化到结束值
 * @param {*} start
 * @param {*} end
 * @param {*} callback 每次变化回调
 */
function amiate(start, end, callback) {
    let len = 60 // 1s 大概60帧
    let dis = (end - start) / len
    render()
    function render() {
        requestAnimationFrame(() => {
            len--
            if (len > 0) {
                start += dis
                render()
            } else {
                start = end
            }
            callback(start)
        })
    }
}